home *** CD-ROM | disk | FTP | other *** search
- SWARM
- (c) 1992, Splat! Graphics
-
- This polyray data file generator produces a 165K Polyray 1.5 data file that
- creates a swarm of 60 blobs defined by 300 metaballs that swirls around.
- The motion is based on MERGE2 written by Eric Deren that was extended to
- 3D. Its all sines and cosines but the motion is hypnotic. The motion will
- repeat about every 7000 frames.
-
- Use Qbasic in DOS 5.0 to run it.
-
- In polyray, you have to turn warnings off, since I overwrite several hundred
- variables in order to save space. I recommend the following polyray.ini file:
-
- abort_test on
- alias_threshold 0.05
- antialias none
- display vga
- max_samples 8
- pixel_size 24
- pixel_encoding rle
- renderer ray_trace
- shade_flags default
- shadow_tolerance 0.05
- status totals
- warnings off
-
- I got 400 frames overnight at 160x120 on a 486/33.
-
- If you're going to create a long animation, Pay Attention!
-
- DOS does not handle directories with more than 256 files very well, since the
- multiple linked directories created slows everyone down. And there's no DOS
- tool that I know of that removes deleted entries so your disk will stay slow
- even if you delete the files until you run a disk packer like nortons
- SPEEDISK. I'd recommend you render 250 targas at a time and write them
- to their own subdirectories.
-
- Painfully detailed steps...
-
- Step 1). Create a directory called \ply\swarm and copy swarm.pi to it.
- Step 2). Decide how big of a flic you want to create. At 160x120, each
- 250 frame block takes about 5 meg. Lets say you have 30 meg
- free, reserve 25 for the targas and 5 for the flic. Lets try
- rendering a 1250 frame flic.
-
- Step 3). Off of \ply\swarm, create the subdirectories 0,250,500,750 and 1000.
-
- Step 4). In the header of SWARM.PI, modify the start_frame, end_frame and
- outfile name to contain the right values. Render 250 frames, then
- change the header to the next 250 and start it over again. For the
- first 250 frames, the header would read:
-
- #
- # SWARM.PI
- #
- # Polyray input file - Jeff Bowermaster
- # 8/31/92
- # Modified 11/20/92
-
- # Define the range of the animation
-
- start_frame 0
- end_frame 249
- total_frames 250
- outfile "0\swrm"
-
- When you're finished,
-
- \ply\swarm\0 will contain swrm000.tga-swrm249.tga
- \ply\swarm\250 will contain swrm250.tga-swrm499.tga
- \ply\swarm\500 will contain swrm500.tga-swrm749.tga
- \ply\swarm\750 will contain swrm750.tga-swrm999.tga
- \ply\swarm\1000 will contain swrm1000.tga-swrm1249.tga
-
-
- Step 5). Use DTA in list mode to assemble the final flic. Create a file
- "list" contained the following lines:
-
- 0\*.tga
- 250\*.tga
- 500\*.tga
- 750\*.tga
- 1000\*.tga
-
- Then call dta using
-
- DTA @list /ff /oswarm /s3 /c10
-
- and you're all set.
-
- Fringe benefit, by keeping 3 numeral and 4 numeral targas isolated, you
- prevent frames 1000-1009 from butting in between frames 100 and 101.
-
- A preview of the motion can be seen running merge3. Many thanks to Eric
- Deren for allowing me to use his algorithm for this project.
-
- Have fun, feel free to build on this code and PLEASE post whatever you
- come up with, I'd (we'd all) love to see it.
-
- Jeff Bowermaster
- [72040,2117]
-
- bowerman@garfield.ncat.edu
-
- TGA 510-524-2780
-